/**********************************************************/
/* Goblin Defense - A tower defense game for Wii Homebrew */
/* Copyright (C) 2009 Ricardo Bueno Cordeiro              */
/* Licensed under de GNU General Public License v2.0      */
/*   See license_gplv2.txt for detalis                    */
/**********************************************************/

#ifndef __SPRITE_H_
#define __SPRITE_H_

#include <gccore.h>

#include "spritetex.h"

class Sprite {
private:
	static void draw_sprite_error(f32 x, f32 y, f32 w, f32 h, f32 rcos, f32 rsin);
	static void draw_sprite(f32 x, f32 y, f32 w, f32 h, f32 rcos, f32 rsin, u32 sprite);

public:
	static void draw_sprite(f32 x, f32 y, f32 w, f32 h, u32 sprite);
	static void draw_sprite(f32 x, f32 y, f32 w, f32 h, f32 angle, u32 sprite);

	virtual void draw() = 0;
	virtual void update(u32 step) = 0;

	virtual ~Sprite() {}
};

#endif
